package beans.interfaces;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;

import javax.ejb.Local;

import agents.Agent;
import model.AgentInfo;
import model.Host;

@Local
public interface AgentDataLocal {
	public void init();
	public Host getLocalHost();
	public ArrayList<Host> getHosts();
	public Agent getAgent(AgentInfo info);
	public Agent getAgent(Agent agent);
	public Agent getAgent(String key);
	public ArrayList<Agent> getAllAgents();
	public void addAgent(Agent agent, String key);
	public void addAgents(HashMap<String, Agent> agents);
	public Agent removeAgent(Agent agent);
	public Agent removeAgent(String key);
	public void addHost(Host h);
	public void addHosts(Collection<Host> localHostList);
	public ArrayList<Agent> removeAllAgents(ArrayList<Agent> agentsToBeRemoved);
	public HashMap<String, Agent> getAgents();
	public void setLocalhost(Host localhost);
}
